package com.gisquest.pg.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * SQL通用查询 Mapper 接口
 * </p>
 *
 * @author liudl
 * @since 2022-07-28
 */
@Mapper
public interface SearchMapper {

    /**
     * 查询（返回多个结果）
     * @param sql sql语句
     * @return 结果集
     */
    List<Map<String, Object>> selectBySql(@Param("sql") String sql);

    /**
     * 更新
     * @param sql sql语句
     * @return 行数
     */
    int updateBySql(@Param("sql") String sql);

    /**
     * 新增
     * @param sql sql语句
     * @return 行数
     */
    int insertBySql(@Param("sql") String sql);

    /**
     * 新增
     * @return 行数
     */
    int insertRds(@Param("id") String id,@Param("createTime") String createTime, @Param("bytes") byte[] bytes);

    /**
     * 查询单个结果
     * @param sql sql语句
     * @return 结果map对象
     */
    Map<String, Object> selectBySqlOne(@Param("sql") String sql);

    /**
     * 删除
     * @param sql sql语句
     * @return 行数
     */
    int deleteBySql(@Param("sql") String sql);
}
